/*
  学习目标：常用的受控组件
 
*/
import React, { Component } from 'react';

export default class App extends Component {
  // 1. 声明state
  state = {
    name: 'zs',
    desc: '',
    city: '2',
    isSingle: false,
  };

  // anfn 快捷键生成箭头函数
  handleChangeName = (e) => {
    console.log(e.target.value, 'value');
    // sst
    this.setState({ name: e.target.value });
  };

  handleChangeDesc = (e) => {
    this.setState({ desc: e.target.value });
  };

  handleChangeCity = (e) => {
    this.setState({ city: e.target.value });
  };

  handleChangeSingle = (e) => {
    // 🔔 checkbox使用checked属性，表示选中与不选中
    this.setState({
      isSingle: e.target.checked,
    });
  };

  render() {
    // cs
    const { name, desc, city, isSingle } = this.state;
    return (
      <div>
        姓名：
        <input type="text" value={name} onChange={this.handleChangeName} />
        <br />
        描述：<textarea value={desc} onChange={this.handleChangeDesc}></textarea>
        <br />
        城市：
        <select value={city} onChange={this.handleChangeCity}>
          <option value="1">北京</option>
          <option value="2">上海</option>
          <option value="3">广州</option>
          <option value="4">深圳</option>
        </select>
        <br />
        是否单身：
        <input type="checkbox" checked={isSingle} onChange={this.handleChangeSingle} />
      </div>
    );
  }
}
